//
//  AirSurfaceRender+Declare.h
//  AirKit
//
//  Created by 李牧 on 16/5/3.
//  Copyright © 2016年 SimuTech. All rights reserved.
//

#ifndef AirSurfaceRender_Declare_h
#define AirSurfaceRender_Declare_h

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@class AirSegmentKey;
@class AirSurfaceRender;
typedef void (^DidSelectedBlock)(AirSegmentKey *airSegmentKey);

@protocol AirScalingFactorDelegate <NSObject>
@optional
- (void)airScalingFactor:(float)scaling_factor;
@end
/**
 
 *   控制模式:0 方向 1 移动
 */
typedef NS_ENUM(NSInteger, ControlMode) {
    /**
     *  方向模式
     */
    wheelMode,
    /**
     *  移动模型
     */
    powerMode
};

/** 漫游设置
 *  移动方式：1 飞行 2 步行
 */
typedef NS_ENUM(NSInteger, MoveMode) {
    /**
     *  无
     */
    MoveModeNone,
    /**
     *  飞行
     */
    flyMode,
    /**
     *  步行
     */
    walkMode
};
/**
 *  缩放相机模式枚举
 */
typedef NS_ENUM(NSInteger, ZoomMode) {
    /// 缩放相机至显示所有可视对象
    zoomModeFitAll = 0,
    /// 缩放相机至当前选择对象
    zoomModeSelection,
};

/**
 触摸类型枚举
 */
typedef enum {
    TouchEventUp,
    TouchEventDown,
    TouchEventMove,
    TouchEventCancel,
} TouchEventType;

/**
 视图模式枚举
 */
typedef NS_ENUM(NSInteger, ViewMode) {
    /// 设置正视图模式
    ViewModeIosmetric = 0,
    /// 设置前视图模式
    ViewModeFront,
    /// 设置后视图模式
    ViewModeBack,
    /// 设置左视图模式
    ViewModeLeft,
    /// 设置右视图模式
    ViewModeRight,
    /// 设置顶视图模式
    ViewModeTop,
    /// 设置下视图模式
    ViewModeBottom,
};

#endif /* AirSurfaceRender_Declare_h */
